#ifndef _TEXTURE_MANAGER_H_
#define _TEXTURE_MANAGER_H_

#include "Singleton.h"
#include <vector>

#include "TextureNotFoundException.h"
#include "Texture.h"
#include <SDL/SDL_image.h>
#include <GL/gl.h>
class TextureManager : public Singleton<TextureManager>
{
    public:
    std::vector<Texture> m_textures;

    /*
     * Requires : The GraphicEngine must be initialized and a window created
     */
    unsigned int getTexture( std::string fileName ) throw ( TextureNotFoundException );

    private:
    unsigned int loadTexture( std::string fileName ) throw ( TextureNotFoundException );

    private:
    unsigned int m_stayTime;
    unsigned int m_disapearTime;
};

#endif // _TEXTURE_MANAGER_H_
